package com.pesking.core.sqlparser;

import java.sql.Connection;
import java.sql.SQLException;

import com.pesking.core.Order;
import com.pesking.core.datasource.Page;
import com.pesking.core.parameter.Parameter;

/**
 * SQL解释器接口
 * @author cypei
 * @since 2021-12-26
 */
public interface SqlParser extends Order{
	
		
	/**
	 * 执行方法
	 * @param connection			连接对象
	 * @param statement				执行语句
	 * @param parameter				请求参数对象
	 * @param page					当前页
	 * @throws SQLException
	 */
	public <T> void executeSQL(Connection connection
								,String statement
								,Parameter parameter
								,Page page
								,SqlResult<T> result);
		
	
	/**
	 * 当前SqlParser解释器是否为存储过程解释器
	 * @return
	 */
	default public boolean isProcedure() {
		return false;
	}
	
}
